package com.slofzx.nuoda.evaluation.project.compont.exported;

import com.slofzx.nuoda.evaluation.project.dto.ProjectInfoDTO;
import com.slofzx.nuoda.evaluation.project.enums.ProductTypeEnum;
import com.slofzx.nuoda.evaluation.steretype.ExcelExportItem;
import com.slofzx.nuoda.excel.entity.TemplateConfig;
import com.spire.xls.Workbook;

import java.util.List;
import java.util.Map;

public class ExportExcelContext {
    // 任务或方案ID
    private String id;
    /**
     * 产品类型
     */
    private ProductTypeEnum productType;
    /**
     * 是否无项目
     */
    private boolean emptyProject;
    /**
     * 导出项目筛选条件
     */
    private ProjectInfoDTO projectInfoDTO;
    /**
     * 成本计算方式
     */
    private String costEvaMethod;
    /**
     * 自定义模板配置
     */
    private TemplateConfig config;
    /**
     * 自定义导出取数配置
     */
    private List<ExcelExportItem> excelExportItemList;
    /**
     * 文本对象
     */
    private Workbook workbook;
    /**
     * sheet页索引号
     */
    private Integer sheetIndex;
    /**
     * 模板数据 key field名称  value->所在坐标
     */
    private Map<String, String> fieldPositionMap;



    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public ProductTypeEnum getProductType() {
        return productType;
    }

    public void setProductType(ProductTypeEnum productType) {
        this.productType = productType;
    }

    public ProjectInfoDTO getProjectInfoDTO() {
        return projectInfoDTO;
    }

    public void setProjectInfoDTO(ProjectInfoDTO projectInfoDTO) {
        this.projectInfoDTO = projectInfoDTO;
    }

    public String getCostEvaMethod() {
        return costEvaMethod;
    }

    public void setCostEvaMethod(String costEvaMethod) {
        this.costEvaMethod = costEvaMethod;
    }

    public TemplateConfig getConfig() {
        return config;
    }

    public void setConfig(TemplateConfig config) {
        this.config = config;
    }

    public List<ExcelExportItem> getExcelExportItemList() {
        return excelExportItemList;
    }

    public void setExcelExportItemList(List<ExcelExportItem> excelExportItemList) {
        this.excelExportItemList = excelExportItemList;
    }

    public Workbook getWorkbook() {
        return workbook;
    }

    public void setWorkbook(Workbook workbook) {
        this.workbook = workbook;
    }

    public Integer getSheetIndex() {
        return sheetIndex;
    }

    public void setSheetIndex(Integer sheetIndex) {
        this.sheetIndex = sheetIndex;
    }

    public Map<String, String> getFieldPositionMap() {
        return fieldPositionMap;
    }

    public void setFieldPositionMap(Map<String, String> fieldPositionMap) {
        this.fieldPositionMap = fieldPositionMap;
    }

    public boolean isEmptyProject() {
        return emptyProject;
    }

    public void setEmptyProject(boolean emptyProject) {
        this.emptyProject = emptyProject;
    }
}
